// login 模块
import { makeAutoObservable } from 'mobx'
import { getToken, setToken, http } from '@/utils'
// import { getTokenAPI } from '@/utils/api'
import { removeToken } from '@/utils'

class LoginStore {
  token = getToken() || '' // 取得时候先看本地有没有
  constructor() {
    // 响应式
    makeAutoObservable(this)
  }
  getToken = async ({ mobile, code }) => {
    // 调用登录接口
    const res = await http.post('/authorizations', {
      mobile,
      code,
    })
    // const res = await getTokenAPI({ mobile, code })
    // 存入 token
    this.token = res.data.token
    // 存入 localStorage中
    setToken(this.token)
  }

  // 退出登录
  loginOut = () => {
    this.token = ''
    removeToken()
  }
}

export default LoginStore
